#ifndef _VT_RECODE_MP3_H_
#define _VT_RECODE_MP3_H_

#include "stdio.h"
#include "stdint.h"
#include "string.h"
#include "stdbool.h"
#include "user_task.h"
#include "user_dsp.h"
#include "native_playback.h"


#include "os_msg_q.h"
#include "os_mem.h"
#include "os_timer.h"


#include "driver_ipc.h"
#include "driver_syscntl.h"
#include "driver_sdc.h"
#include "driver_codec.h"

enum vt_recode_mp3_statue
{
	VT_RECODE_START_STATUE,
	VT_RECODE_STOP_STATUE,
	VT_MP3_START_STATUE,
	VT_MP3_STOP_STATUE,
	VT_MP3_PAUSE_STATUE
};

enum vt_mp3_action_statue {
    MP3_ACTION_NONE,
    MP3_ACTION_PLAY,
    MP3_ACTION_PAUSE,
    MP3_ACTION_NEXT,
    MP3_ACTION_PREV,
    MP3_ACTION_FAST_FORWARD,
    MP3_ACTION_FAST_BACKWARD,
    MP3_ACTION_SPECIFIED,
};

enum vt_dsp_mp3_statue {
	
	CLOSE,
	
	OPEN,
};

void vt_cmd_recv_handler(uint8_t *data, uint16_t length);
bool vt_recode_mp3(uint8_t event, void *arg);
void vt_start_recode();
void vt_stop_recode();
//bool vt_mp3_start();
//void vt_mp3_stop();
//void vt_mp3_pause();

static void mp3_playback_start(void);


extern uint8_t dsp_nrec_start_flag;
void audio_codec_timer_func(void *arg);
extern os_timer_t audio_codec_timer;
void codec_mic_loop_reg_config(void);
bool is_fs_has_mp3_item(void);
void fs_uart_send_mp3_info(void);

#endif